package br.com.comanda.dao.autosql.dto;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Anotação para demonstrar uma classe como um Data Transfer Object. Isso
 * significa que a classe anotada, é na verdade um join entre duas tabelas.
 * 
 * Exemplo:
 * 
 * Tabela Carro(id, nome, valor) Tabela Motor(id, id_carro, velocidade_maxima,
 * potencia)
 * 
 * @DTO(classe = Carro.class, joinClass = Motor.class)
 * @Juncao(coluna = "id", matchWith = "id_carro") public class CarroMotorDTO
 *                implements DataTransferObjet { ... }
 * 
 * @author thiago
 * @since 09/01/2013
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface DTO {

	Class<?> classe();

	Class<?> joinClass();
}
